package com.flybear.aqi.common;
/**
 * 命令编码表
 * 共有四类命令（即请求命令、上传命令、通知命令和交互命令），命令编码分为以下四组：
 1000~1999 表示初始化命令和参数命令编码；
 2000~2999 表示数据命令编码；
 3000~3999 表示控制命令编码；
 9000~9999 表示交互命令编码

 数采仪与监控中心初始化通讯流程
 数采仪与监控中心首次链接时，监控中心应对数采仪进行设置，具体操作如下：
 1) 数采仪时间校准；
 2) 超时数据与重发次数设置；
 3) 实时数据上报时间间隔设置；
 4) 分钟数据上报时间间隔设置；
 5) 实时数据是否上报设置；
 6) 污染治理设备运行状态是否上报设置。
 */
public class CommandCode {
    //命令类型
    public static final int  REQUEST_CMD= 1;//请求命令
    public static final int  UPLOAD_CMD = 2;//上传命令
    public static final int  NOTICE_CMD = 3;//通知命令
    public static final int  INTERACTIVE_CMD = 4;//交互命令


    //1.初始化命令--预留初始化命令 预留命令范围 1001-1010
    //设置超时时间及重发次数 (请求命令)
    //用于上位机设置现场机的超时时间及重发次数，超时时间及重发次数参考取值参见表 《缺省超时时间及重发次数定义表
    public static final int  S_X_TIMEOUT_RETRY =1000;

    //2.参数命令--- 预留参数命令 预留命令范围 1073-1999
//    提取现场机时间 请求命令 用于提取现场机的系统时间
//    上传现场机时间 1011 上传命令 用于上传现场机时间
    public static final int  INTERACTIVE_SYSTIME =1011;

//    设置现场机时间 1012 请求命令 用于设置现场机的系统时间
    public static final int  S_X_SET_SYSTIME =1012;

//    现场机时间校准请求 1013 通知命令 用于向上位机发送现场机时间校准请求
    public static final int  X_S_TIME_CALIBRATION =1013;
//    提取实时数据间隔 1061 请求命令 提取实时数据间隔
//    上传实时数据间隔 1061 上传命令 上传实时数据间隔
    public static final int  INTERACTIVE_REALTIME =1061;
//    设置实时数据间隔 1062 请求命令 指定实时数据间隔
    public static final int  S_X_SET_REALTIME =1062;
//    提取分钟数据间隔 1063 请求命令 提取分钟数据间隔
//    上传分钟数据间隔 1063 上传命令 上传分钟数据间隔
    public static final int  INTERACTIVE_MINSDATA =1063;
//    设置分钟数据间隔 1064 请求命令 设置分钟数据间隔
    public static final int  S_X_SET_MINS=1064;
//    设置现场机密码 1072 请求命令 用于设置现场机的密码
    public static final int  S_X_SET_PASSWORD =1072;


    //3.数据命令
//    实时数据
//    取污染物实时数据 2011 请求命令 用于启动现场机上传实时数据
//    上传污染物实时数据 2011 上传命令 用于现场机上传污染物实时数据
//    停止察看污染物实时数据 2012 通知命令 用于停止现场机实时数据上传


//    设备状态
//    取设备运行状态数据 2021 请求命令 用于启动现场机上传污染治理设施运行状态
//    上传设备运行状态数据 2021 上传命令 用于现场机上传污染治理设施运行状态
//    停止察看设备运行状态 2022 通知命令 用于停止现场机上传污染治理设施运行状态

//    日数据
//    取污染物日历史数据 2031 请求命令 用于上位机提取现场机的污染物日历史数据
//    上传污染物日历史数据 2031 上传命令 用于现场机上传污染物日历史数据
//    取设备运行时间日历史数据 2041 请求命令 用于上位机提取现场机的设备运行时间日历史数据
//    上传设备运行时间日历史数据 2041 上传命令 用于现场机上传设备运行时间日历史数据

//    分钟数据
//    取污染物分钟数据 2051 请求命令 用于上位机提取现场机的污染物分钟历史数据
//    上传污染物分钟数据 2051 上传命令 用于现场机上传污染物分钟历史数据

//    小时数据
//    取污染物小时数据 2061 请求命令 用于上位机提取现场机的污染物小时历史数据
//    上传污染物小时数据 2061 上传命令 用于现场机上报污染物小时历史数据

//    其它数据
//    上传数采仪开机时间 2081 上传命令 用于现场机自动上报数采仪开机时间
//    预留数据命令 预留命令范围 2082-2999


     //4.控制命令- 预留控制命令 预留命令范围 3022-3999
//    零点校准量程校准 3011 请求命令  用于上位机启动在线监控（监测）仪器仪表 )的零点校准和量程校准
//    即时采样 3012 请求命令 用于上位机启动在线监控（监测）仪器仪表 即时采样
//    启动清洗/反吹 3013 请求命令 用于上位机启动水在线监控（监测）仪器仪 表清洗或启动烟气在线监控（监测）仪器仪 表反吹
//    比对采样 3014 请求命令 用于上位机启动在线监控（监测）仪器仪表 比对采样
//    超标留样 3015 请求命令 用于上位机启动在线监控（监测）仪器仪表 留样
//    上传超标留样信息 3015 上传命令 用于现场机上传在线监控（监测）仪器仪表 的超标留样信息
//    设置采样时间周期 3016 请求命令 用于上位机设置在线监控（监测）仪器仪表 的采样时间周期
//    提取采样时间周期 3017 请求命令 用于上位机提取在线监控（监测）仪器仪表 的采样时间周期
//    上传采样时间周期 3017 上传命令 用于现场机上传在线监控（监测）仪器仪表 的采样时间周期
//
//    提取出样时间 3018 请求命令 用于上位机提取查询在线监控（监测）仪器 仪表的出样时间
//    上传出样时间 3018 上传命令 用于现场机上传在线监控（监测）仪器仪表 的出样时间
//    提取设备唯一标识 3019 请求命令 用于上位机提取在线监控（监测）仪器仪表 的设备唯一标识
//    上传设备唯一标识 3019 上传命令 用于现场机上传在线监控（监测）仪器仪表 的设备唯一标识。在线监控（监测）仪器仪表发生更换时，上传在线监控（监测）仪器 仪表设备唯一标识
//    提取现场机信息 3020 请求命令 用于上位机提取现场机信息
//    上传现场机信息 3020 上传命令 用于现场机上传现场机信息，或现场机信息 变化时，上报现场机信息
//    设置现场机参数 3021 请求命令 用于上位机设置现场机的参数

    //5,交互命令--预留交互命令 预留命令范围 9015-9999
//    请求应答 9011用于现场机回应接收的上位机请求命令是否 有效
//    执行结果 9012用于现场机回应接收的上位机请求命令执行 结果
//    通知应答 9013 9013 回应通知命令
//    数据应答 9014 9014 数据应答命令


}


